Transcoding refers to the conversion of one digital file to another. The conversion includes, but is not limited to, format change, resolution change, and bit rate change. In video-on-demand applications, a host computer may respond to a user's request to view a stored video file. The host computer may transcode the stored video file to an appropriate video format and bit rate for transmission through a network to the user. The transcoded format may be compatible with the user's platform, e.g., a television or a personal computer. The host computer may also adjust the transmission bit rate to meet the bandwidth requirement of the network connecting the host and the user.
Network connection between the host and the user may sometimes be unstable or congested. Video transmission on a wireless connection such as wireless fidelity (WiFi) network is especially susceptible to data loss and errors. Thus, the transcoder on the host usually reduces transmission bit rate to protect against such network conditions. However, a reduced bit rate typically degrades the quality of the video received by the user.